10 REM 20 PRINT"[147][154]":POKE53281,0:POKE53280,0:POKE53272,21 30 REM (C) BY K.-H. HESS 40 DIMRZ$(7),RZ(7) 50 HV$="IVXLCDM":REM HILFSVARIABLE 60 H0=.5:FORIE=1TO7:F%=2:IFINT(IE/2)=IE/2THENF%=5 70 H0=INT(H0*F%):RZ(IE)=H0:RZ$(IE)=MID$(HV$,IE,1) 80 NEXTIE 90 PRINT"[147]R O E M I S C H E Z A H L E N ! ! !" 100 PRINT"U M W A N D L U N G" 110 PRINT"'R'[146] = ROEMISCH [195][195][195]> ARABISCH" 120 PRINT"'A'[146] = ARABISCH [195][195][195]> ROEMISCH" 130 PRINTTAB(12)"'E' = ENDE" 140 PRINT"":FORUU=1TO40:PRINT"[209]";:NEXT 150 PRINT"BITTE, WAEHLEN SIE !!!" 160 GETX$:IFX$=""THEN160 170 IFX$="R"THEN200 180 IFX$="A"THEN620 190 GOTO160 200 PRINT"[147]":REM ROEMISCH -> ARABISCH 210 PRINT 220 INPUT"ROEMISCHE ZAHL: *[157][157][157]";RZ$ 230 IFRZ$="*"THENPRINT"[145]";:GOTO220 240 IFRZ$="E"THENEND 250 LR=LEN(RZ$) 260 REM PLAUSIBILIERUNG 270 FORIE=1TOLR 280 Z$=MID$(RZ$,IE,1):Z=ASC(Z$) 290 VH%=1:FORH1=1TO7:IFZ=ASC(RZ$(H1))THENVH%=0 300 NEXTH1 310 IFVH%THENVH=IE:IE=LR 320 NEXTIE 330 IFVH%THENIE=VH:GOTO570 340 REM PRUEFUNG 350 H1=0:H0=0:E0=0:E1=0:E2=0:M%=0:M0%=0:ZG=0:IE=0:ZV$="":M1%=0 360 IE=IE+1:IFIE>LRTHEN550 370 H1=0 380 Z$=MID$(RZ$,IE,1):IFZ$=ZV$THENZG=ZG+1:GOTO400 390 ZG=0:ZV$=Z$ 400 IFZG>0THENIFZ$="V"ORZ$="L"ORZ$="D"THEN570 410 IFZG>2THENIFZ$<>"M"THEN570 420 H1=H1+1:IFRZ$(H1)<>Z$THEN420 430 IFH1=>H0THENIFM%THEN490 440 IFM1%THENIFH1>H0THENIFH1=>H3THEN570 450 IFH1=H0THENM0%=1:GOTO510 460 IFH1>H0THENIFM0%THEN570 470 IFH1>H0THENIFIE>1THENIFH0/2=INT(H0/2)THEN570 480 IFH1>H0THENIFIE>1THENM%=M%+1:M1%=1:H3=H2:GOTO510 490 IFH1=>H2THENIFIE>1THEN570 500 H2=H1:M%=0:M0%=0 510 H0=H1:IFM%>1THEN570 520 E0=RZ(H1):IFM%=1THENE2=E2-(2*E1) 530 E1=E0:E2=E2+E1 540 GOTO360 550 PRINT"ROEMISCH ";RZ$;"[146] = ARABISCH ";INT(E2) 560 GOTO610 570 REM FEHLERMELDUNG 580 PRINT" [195][195][195]> FALSCH: ";LEFT$(RZ$,IE-1); 590 PRINT""MID$(RZ$,IE,1)"[146]"MID$(RZ$,IE+1) 600 PRINT" EINGABE WIEDERHOLEN!" 610 GOTO210 620 PRINT"[147]":REM ARABISCH -> ROEMISCH 630 PRINT 640 INPUT"ARABISCHE ZAHL: 0 [157][157][157][157][157][157][157][157][157]";AZ$ 650 IFAZ$="E"THENEND 660 AZ=VAL(AZ$) 670 AZ=INT(AZ):IFAZ=0THENPRINT"[145]";:GOTO640 680 IFAZ<0ORAZ>10000THENPRINT" FALSCHE EINGABE!":GOTO630 690 RZ=AZ 700 RZ$="" 710 H1=0 720 H1=H1+1:IFH1>7THENRZ$=RZ$+"M":RZ=RZ-RZ(7):GOTO710 730 SG=SGN(RZ-RZ(H1)):IFSG>0THEN720 740 IFSG=0THENRZ$=RZ$+RZ$(H1):GOTO820 750 FORH2=1TO(H1-1)STEP2:VG=RZ(H1)-RZ:VG%=0:VH%=0 760 IFVG=RZ(H2)THENRZ$=RZ$+RZ$(H2)+RZ$(H1):GOTO820 770 IFRZ>RZ(H2)ANDRZ